-
Couldn't load subscription status.
- Fork 13.9k
Simplify Span::source_callee impl
#112705
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Simplify Span::source_callee impl
#112705
Conversation
|
r? @cjgillot (rustbot has picked a reviewer for you, use r? to override) |
|
Good catch. A while loop would be even better. |
|
@cjgillot I don't see how this can be cleanly written with a pub fn source_callee(self) -> Option<ExpnData> {
let mut expn_data = None;
let mut next_expn_data = self.ctxt().outer_expn_data();
while !next_expn_data.is_root() {
expn_data = Some(next_expn_data);
next_expn_data = next_expn_data.call_site.ctxt().outer_expn_data();
}
expn_data
} |
|
Fair enough. |
…e_impl, r=cjgillot Simplify `Span::source_callee` impl Imo the iterator impl is easier to grasp.
…iaskrgr Rollup of 7 pull requests Successful merges: - rust-lang#109970 ([doc] `poll_fn`: explain how to `pin` captured state safely) - rust-lang#112705 (Simplify `Span::source_callee` impl) - rust-lang#112757 (Use BorrowFlag instead of explicit isize) - rust-lang#112768 (Rewrite various resolve/diagnostics errors as translatable diagnostics) - rust-lang#112777 (Continue folding in query normalizer on weak aliases) - rust-lang#112780 (Treat TAIT equation as always ambiguous in coherence) - rust-lang#112783 (Don't ICE on bound var in `reject_fn_ptr_impls`) r? `@ghost` `@rustbot` modify labels: rollup
Imo the iterator impl is easier to grasp.